// 加载插件 [ vue, vue-loader, less, serialport]
const SerialPort = require('serialport')
const { ipcRenderer } = require('electron')
const router = require('./router')
const Readline = require('@serialport/parser-readline')
// 放到全局
window.httpVueLoader = httpVueLoader
// 原型链绑定串口函数
Vue.prototype.$serialPort = SerialPort
Vue.prototype.$Readline = Readline
// 原型链绑定 electron
Vue.prototype.$electron = require('electron')
// 原型链绑定 ipcRender
Vue.prototype.$ipc = ipcRenderer

Vue.use(ELEMENT, { size: 'small', zIndex: 3000 })
// 配置less
httpVueLoader.langProcessor.less = async function (scssText) {
  let res = await less.render(scssText)
  return res.css
}

Date.prototype.Format = function (fmt) { //author: meizz 
  var o = {
      "M+": this.getMonth() + 1, //月份 
      "d+": this.getDate(), //日 
      "h+": this.getHours(), //小时 
      "m+": this.getMinutes(), //分 
      "s+": this.getSeconds(), //秒 
      "q+": Math.floor((this.getMonth() + 3) / 3), //季度 
      "S": this.getMilliseconds() //毫秒 
  };
  if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
  for (var k in o)
      if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
  return fmt;
}

// 初始化实例
const vm = new Vue({
  router
}).$mount('#app')